package io.github.annyylxyms.gynregistry;

import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestControllerAdvice;

// @RestControllerAdvice 这个注解用于定义一个控制器级别的切面，它可以捕捉特定控制器中的异常、处理HTTP请求的全局响应，以及提供一些通用的数据处理功能。
@RestControllerAdvice
public class GynExceptionHandler {
    //全局异常处理，捕获所有RuntimeException，并返回一个自定义的异常响应对象。
    @ExceptionHandler(RuntimeException.class)
    @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
    public ExceptionResponse handleException(Exception e) {
        return new ExceptionResponse(HttpStatus.INTERNAL_SERVER_ERROR,e.getMessage());
    }
}
